# !/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
===========================
@Time : 2022/10/6 0006 12:03
@Author : 测试开发工程师
@File : 30.post 与 get 的区别.py
@Software: PyCharm
============================
"""

# ================================== get 和 post 的区别 ========================================
"""
get 和 post 的区别:
    1. http 的 method 字段不同
    2. post 可以附加 body,可以支持 form，json，xml，binary 等数据格式
    3. 行业通用的规范：
        无状态变化的建议使用 get 请求
        数据的写入 与 状态修改建议使用 post 请求
    4. 传递数量不同
    5. 安全性不同
get 请求方式：（获取资源）
    www.ceshiren.com?key1=value1&key2=value2

post 请求方式：（向服务发起请求）
        payload = {
            "key1": "value1",
            "key2": "value2"
        }
        r = requests.post("https://httpbin.org/post", json=payload)
        
get 和 post 的区别:

                                 get                                  post
请求资源                  从指定的资源请求数据              向指定的资源提交要被处理的数据
可见性                     数据在 URL 中对所有可见          数据不会显示在 URL　中
安全性                         安全性差                              安全性好
对数据类型的限制             只允许 ASCII 字符                没有限制也允许二进制数据
长度限制                    长度受浏览器限制                          无限制  
参数                        保留在浏览器                       参数不会保存在浏览器
编码类型               application/x-www-form-urlencoded   application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用的多重编码
缓存                           能被缓存                              不能缓存
书签                           可被保存                            不能收藏为书签
后退按钮/刷新                  不影响                       数据会被重新提交（浏览器应该告知数据会被重新提交）

"""
